package 强化训练;

public class 字符串转数字 {
    public static void main(String[] args) {
        String str = "+123456712";
        System.out.println(StrToInt(str));
    }
    public static int StrToInt(String str) {
        long num = 0;
        int x = 1;
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if (i == 0) {
                if (c == '-') {
                    x = -x;
                }else if (c == '+'){
                    x = x;
                }else  if (c - '0' <= 9 &&  c - '0' >= 0){
                    num = c - '0';
                }else {
                    return  0;
                }
            } else {
                if (c - '0' > 9 || c - '0' < 0) {
                    return 0;
                } else {
                    num = num * 10;
                    num += (c - '0');
                }
            }
        }
        if(num*x <= Integer.MAX_VALUE && num*x >= Integer.MIN_VALUE){
            return (int)num*x;
        }
        return 0;
    }
}
